﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Hander.Customization.Frame
{
    class TechData
    {
        /// <summary>
        /// record the collectin name  that belong to 
        /// </summary>
        public string Collection { get; set; }
        public string TechId { get; set; }
        public string CreateDate { get; set; }
        public string OperatorName { get; set; }
        public string OperatorMachineName { get; set; }
        public string OperatorIPAddress { get; set; }
        public string LastUpdateTime { get; set; }
        #region 有效性管理
        /// <summary>
        /// 录入代码变更的主要内容，便于跟踪管理,比如变更流程的编号或描述文档的索引内容
        /// </summary>
        public string ChangedKeyContent { get; set; }
        /// <summary>
        /// 可使用开始日期
        /// </summary>
        public string UseableStartDate { get; set; }
        /// <summary>
        /// 可使用结束日期
        /// </summary>
        public string UseableEndDate { get; set; }
        /// <summary>
        /// 有效标志，决定是否可用，与开始和截止日期控制略有不同。
        /// 有效仅表示该代码内容有作用；无效，则与系统无任何关系，发生都没有
        /// 重点比如对于启用日期内使用过的代码，虽然过了有效日期的控制，但是由于存在相关数据，则代码依然有效，但是不能有新的发生了。
        /// </summary>
        public string ValidateFlag { get; set; }

        #endregion

    }
    /// <summary>
    /// 可用性
    /// </summary>
    enum  ValidateFlag { Yes,No}
    class Attachment : TechData
    {
        /// <summary>
        /// attachment unique id
        /// </summary>
        public string AttachId { get; set; }
        /// <summary>
        /// 与此附件相关联的事项
        /// </summary>
        public string[] RelatedId { get; set; }
        /// <summary>
        /// index id of the binary file，now，same as 哈希值
        /// </summary>
        public string FileId { get; set; }

        public string AttachName { get; set; }
        /// <summary>
        /// file type such as txt jpg ,file extension
        /// </summary>
        public string AttachFileType { get; set; }
        /// <summary>
        /// save file logic size ,such as 1.1 M 1.2 G 200 K etc
        /// </summary>
        public string FileSizeView { get; set; }
        /// <summary>
        /// actual file size ,save file bytes
        /// </summary>
        public string FileActSize { get; set; }
        /// <summary>
        /// 文件哈希值，重复文件验证
        /// </summary>
        public string FileHash { get; set; }
        /// <summary>
        /// 描述
        /// </summary>
        public string Description { get; set; }


    }
}
